package ao.com.bna.util;

import org.hibernate.cfg.Configuration;
import org.hibernate.tool.hbm2ddl.SchemaExport;

import ao.com.bna.beans.Area;
import ao.com.bna.beans.AuthGrupo;
import ao.com.bna.beans.AuthUtilizador;
import ao.com.bna.beans.Fornecedor;
import ao.com.bna.beans.ItemPedido;
import ao.com.bna.beans.ItemRequisicao;
import ao.com.bna.beans.ItemSuplemento;
import ao.com.bna.beans.Marca;
import ao.com.bna.beans.Modelo;
import ao.com.bna.beans.MovimentoFornecedor;
import ao.com.bna.beans.Nota;
import ao.com.bna.beans.Pedido;
import ao.com.bna.beans.Produto;
import ao.com.bna.beans.Requisicao;
import ao.com.bna.beans.StatusMovimento;
import ao.com.bna.beans.StatusPedido;
import ao.com.bna.beans.StatusRequisicao;
import ao.com.bna.beans.StatusSuplemento;
import ao.com.bna.beans.Suplemento;
import ao.com.bna.beans.TipoGarantia;
import ao.com.bna.beans.TipoNota;
import ao.com.bna.beans.TipoProduto;
import ao.com.bna.beans.Utente;

public class GerarBaseDeDados {
	public static void main(String args[]) {
		Configuration cfg = new Configuration().configure();
		cfg.addAnnotatedClass(AuthGrupo.class);
		cfg.addAnnotatedClass(AuthUtilizador.class);
		cfg.addAnnotatedClass(Area.class);
		cfg.addAnnotatedClass(Utente.class);
		cfg.addAnnotatedClass(Marca.class);
		cfg.addAnnotatedClass(Modelo.class);
		cfg.addAnnotatedClass(TipoProduto.class);
		cfg.addAnnotatedClass(Produto.class);
		cfg.addAnnotatedClass(StatusPedido.class);
		cfg.addAnnotatedClass(Pedido.class);
		cfg.addAnnotatedClass(ItemPedido.class);
		cfg.addAnnotatedClass(StatusRequisicao.class);
		cfg.addAnnotatedClass(Requisicao.class);
		cfg.addAnnotatedClass(Fornecedor.class);
		cfg.addAnnotatedClass(TipoNota.class);
		cfg.addAnnotatedClass(Nota.class);
		cfg.addAnnotatedClass(StatusSuplemento.class);
		cfg.addAnnotatedClass(Suplemento.class);
		cfg.addAnnotatedClass(TipoGarantia.class);
		cfg.addAnnotatedClass(StatusMovimento.class);
		cfg.addAnnotatedClass(MovimentoFornecedor.class);
		cfg.addAnnotatedClass(ItemRequisicao.class);
		cfg.addAnnotatedClass(ItemSuplemento.class);

		SchemaExport se = new SchemaExport(cfg);

		se.create(true, true);
		
		

		System.out.println("sucesso...");
		se.setOutputFile("C:\\GestaoEquipamentos.sql");

		System.out.println("sucesso...");
		// SchemaUpdate update = new SchemaUpdate (cfg);
		// update.execute(true,true);

	}
}
